package com.ruoyi.procurement.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

import java.math.BigDecimal;
import java.util.Date;
@JsonInclude(JsonInclude.Include.NON_NULL)
public class ProcurementModel {
    private int remainingNum;
    private Long purchaseReturnId;
    private Long purchaseReturnModelId;
    private Long saleGoodsId;
    private String units;
    private String unit;
    private Long allNum;
    private int num;
    private int outNum;
    /**
     * 采购规格/型号明细
     */
    private Long procurementWarehousingNo;
    /**
     * 采购订单管理主键
     */
    private Long procurementWarehousingId;
    /**
     * 公司主键
     */
    private Long deptId;
    private Long SaleGoodsModelId;

    private Long selectId;

    /**
     * 产品主键
     */
    private Long productId;
    /**
     * 产品名称
     */
    private String productName;
    /**
     * 型号/规格
     */
    private String productType;
    /**
     * 采购单位
     */
    private String salesUnit;
    /**
     * 产品注册证
     */
    private String medicalNumber;
    /**
     * 医疗器械注册证主键
     */
    private String productProofId;
    /**
     * 医疗器械失效时间
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private Date medicalEndTime;
    /**
     * 产品规格主键
     */
    private Long modelNo;
    /**
     * 产品规格型号唯一码
     */
    private String modelCode;
    /**
     * 采购单位
     */
    private String purchaseUnit;
    /**
     * 批号
     */
    private String batch;
    /**
     * 采购数量
     */
    private int purchaseNum;
    /**
     * 退货数量
     */
    private int returnNum;
    /**
     * 本批号数量
     */
    private int warehousingAmount;
    /**
     * 生产日期
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private Date productionDate;
    /**
     * 失效日期
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private Date effectiveDate;
    /**
     * 单价
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private BigDecimal purchasePrice;
    /**
     * 税率
     */
    private String taxRate;
    /**
     * 含税单价
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private BigDecimal taxPrice;
    /**
     * 总金额
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private BigDecimal purchaseTotal;
    /**
     * 含税金额
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private BigDecimal taxTotal;
    /**
     * 数量相符
     */
    private String numMatch;
    /**
     * 数量不符描述
     */
    private String numRemark;
    /**
     * 包装相符
     */
    private String packMatch;
    /**
     * 包装不符描述
     */
    private String packRemark;
    /**
     * 效期相符
     */
    private String dataMatch;
    /**
     * 效期不符描述
     */
    private String dataRemark;
    /**
     * 运输方式
     */
    private String shippingMatch;
    /**
     * 运输方式不符描述
     */
    private String shippingRemark;
    /**
     * 资料主键
     */
    private Long informationId;
    /**
     * 出厂检验报告名称
     */
    private String factoryInspectionName;
    /**
     * 出厂检验报告地址
     */
    private String factoryInspectionAddress;
    /**
     * 报关单名称
     */
    private String customsName;
    /**
     * 报关单地址
     */
    private String customsAddress;
    /**
     * 商检报告名称
     */
    private String commodityName;
    /**
     * 商检报告地址
     */
    private String commodityAddress;
    /**
     * 消杀证明名称
     */
    private String disinfectName;
    /**
     * 消杀证明地址
     */
    private String disinfectAddress;
    /**
     * 核酸证明名称
     */
    private String nucleicAcidName;
    /**
     * 核酸证明地址
     */
    private String nucleicAcidAddress;
    /**
     * 采购订单从表 自增主键
     */
    private Long purchaseModelId;
    /*
      销售单位
       */
    private Long factor;

    public int getRemainingNum() {
        return remainingNum;
    }

    public void setRemainingNum(int remainingNum) {
        this.remainingNum = remainingNum;
    }

    public int getNum() {
        return num;
    }

    public void setNum(int num) {
        this.num = num;
    }

    public int getOutNum() {
        return outNum;
    }

    public void setOutNum(int outNum) {
        this.outNum = outNum;
    }

    public Long getPurchaseReturnId() {
        return purchaseReturnId;
    }

    public void setPurchaseReturnId(Long purchaseReturnId) {
        this.purchaseReturnId = purchaseReturnId;
    }

    public Long getPurchaseReturnModelId() {
        return purchaseReturnModelId;
    }

    public void setPurchaseReturnModelId(Long purchaseReturnModelId) {
        this.purchaseReturnModelId = purchaseReturnModelId;
    }

    public Long getSaleGoodsId() {
        return saleGoodsId;
    }

    public void setSaleGoodsId(Long saleGoodsId) {
        this.saleGoodsId = saleGoodsId;
    }

    public String getUnits() {
        return units;
    }

    public void setUnits(String units) {
        this.units = units;
    }

    public String getUnit() {
        return unit;
    }

    public void setUnit(String unit) {
        this.unit = unit;
    }

    public Long getAllNum() {
        return allNum;
    }

    public void setAllNum(Long allNum) {
        this.allNum = allNum;
    }

    public Long getFactor() {
        return factor;
    }

    public void setFactor(Long factor) {
        this.factor = factor;
    }

    public Long getPurchaseModelId() {
        return purchaseModelId;
    }

    public void setPurchaseModelId(Long purchaseModelId) {
        this.purchaseModelId = purchaseModelId;
    }

    public Long getSaleGoodsModelId() {
        return SaleGoodsModelId;
    }

    public void setSaleGoodsModelId(Long saleGoodsModelId) {
        SaleGoodsModelId = saleGoodsModelId;
    }

    public int getReturnNum() {
        return returnNum;
    }

    public void setReturnNum(int returnNum) {
        this.returnNum = returnNum;
    }

    public Long getProcurementWarehousingNo() {
        return procurementWarehousingNo;
    }

    public void setProcurementWarehousingNo(Long procurementWarehousingNo) {
        this.procurementWarehousingNo = procurementWarehousingNo;
    }

    public Long getProcurementWarehousingId() {
        return procurementWarehousingId;
    }

    public void setProcurementWarehousingId(Long procurementWarehousingId) {
        this.procurementWarehousingId = procurementWarehousingId;
    }

    public Long getDeptId() {
        return deptId;
    }

    public void setDeptId(Long deptId) {
        this.deptId = deptId;
    }

    public Long getProductId() {
        return productId;
    }

    public void setProductId(Long productId) {
        this.productId = productId;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public String getProductType() {
        return productType;
    }

    public void setProductType(String productType) {
        this.productType = productType;
    }

    public String getSalesUnit() {
        return salesUnit;
    }

    public void setSalesUnit(String salesUnit) {
        this.salesUnit = salesUnit;
    }

    public String getMedicalNumber() {
        return medicalNumber;
    }

    public void setMedicalNumber(String medicalNumber) {
        this.medicalNumber = medicalNumber;
    }

    public String getProductProofId() {
        return productProofId;
    }

    public void setProductProofId(String productProofId) {
        this.productProofId = productProofId;
    }

    public Date getMedicalEndTime() {
        return medicalEndTime;
    }

    public void setMedicalEndTime(Date medicalEndTime) {
        this.medicalEndTime = medicalEndTime;
    }

    public Long getModelNo() {
        return modelNo;
    }

    public void setModelNo(Long modelNo) {
        this.modelNo = modelNo;
    }

    public String getModelCode() {
        return modelCode;
    }

    public void setModelCode(String modelCode) {
        this.modelCode = modelCode;
    }

    public String getPurchaseUnit() {
        return purchaseUnit;
    }

    public void setPurchaseUnit(String purchaseUnit) {
        this.purchaseUnit = purchaseUnit;
    }

    public String getBatch() {
        return batch;
    }

    public void setBatch(String batch) {
        this.batch = batch;
    }

    public int getPurchaseNum() {
        return purchaseNum;
    }

    public void setPurchaseNum(int purchaseNum) {
        this.purchaseNum = purchaseNum;
    }

    public int getWarehousingAmount() {
        return warehousingAmount;
    }

    public void setWarehousingAmount(int warehousingAmount) {
        this.warehousingAmount = warehousingAmount;
    }

    public Date getProductionDate() {
        return productionDate;
    }

    public void setProductionDate(Date productionDate) {
        this.productionDate = productionDate;
    }

    public Date getEffectiveDate() {
        return effectiveDate;
    }

    public void setEffectiveDate(Date effectiveDate) {
        this.effectiveDate = effectiveDate;
    }

    public BigDecimal getPurchasePrice() {
        return purchasePrice;
    }

    public void setPurchasePrice(BigDecimal purchasePrice) {
        this.purchasePrice = purchasePrice;
    }

    public String getTaxRate() {
        return taxRate;
    }

    public void setTaxRate(String taxRate) {
        this.taxRate = taxRate;
    }

    public BigDecimal getTaxPrice() {
        return taxPrice;
    }

    public void setTaxPrice(BigDecimal taxPrice) {
        this.taxPrice = taxPrice;
    }

    public BigDecimal getPurchaseTotal() {
        return purchaseTotal;
    }

    public void setPurchaseTotal(BigDecimal purchaseTotal) {
        this.purchaseTotal = purchaseTotal;
    }

    public BigDecimal getTaxTotal() {
        return taxTotal;
    }

    public void setTaxTotal(BigDecimal taxTotal) {
        this.taxTotal = taxTotal;
    }

    public String getNumMatch() {
        return numMatch;
    }

    public void setNumMatch(String numMatch) {
        this.numMatch = numMatch;
    }

    public String getNumRemark() {
        return numRemark;
    }

    public void setNumRemark(String numRemark) {
        this.numRemark = numRemark;
    }

    public String getPackMatch() {
        return packMatch;
    }

    public void setPackMatch(String packMatch) {
        this.packMatch = packMatch;
    }

    public String getPackRemark() {
        return packRemark;
    }

    public void setPackRemark(String packRemark) {
        this.packRemark = packRemark;
    }

    public String getDataMatch() {
        return dataMatch;
    }

    public void setDataMatch(String dataMatch) {
        this.dataMatch = dataMatch;
    }

    public String getDataRemark() {
        return dataRemark;
    }

    public void setDataRemark(String dataRemark) {
        this.dataRemark = dataRemark;
    }

    public String getShippingMatch() {
        return shippingMatch;
    }

    public void setShippingMatch(String shippingMatch) {
        this.shippingMatch = shippingMatch;
    }

    public String getShippingRemark() {
        return shippingRemark;
    }

    public void setShippingRemark(String shippingRemark) {
        this.shippingRemark = shippingRemark;
    }

    public Long getInformationId() {
        return informationId;
    }

    public void setInformationId(Long informationId) {
        this.informationId = informationId;
    }

    public String getFactoryInspectionName() {
        return factoryInspectionName;
    }

    public void setFactoryInspectionName(String factoryInspectionName) {
        this.factoryInspectionName = factoryInspectionName;
    }

    public String getFactoryInspectionAddress() {
        return factoryInspectionAddress;
    }

    public void setFactoryInspectionAddress(String factoryInspectionAddress) {
        this.factoryInspectionAddress = factoryInspectionAddress;
    }

    public String getCustomsName() {
        return customsName;
    }

    public void setCustomsName(String customsName) {
        this.customsName = customsName;
    }

    public String getCustomsAddress() {
        return customsAddress;
    }

    public void setCustomsAddress(String customsAddress) {
        this.customsAddress = customsAddress;
    }

    public String getCommodityName() {
        return commodityName;
    }

    public void setCommodityName(String commodityName) {
        this.commodityName = commodityName;
    }

    public String getCommodityAddress() {
        return commodityAddress;
    }

    public void setCommodityAddress(String commodityAddress) {
        this.commodityAddress = commodityAddress;
    }

    public String getDisinfectName() {
        return disinfectName;
    }

    public void setDisinfectName(String disinfectName) {
        this.disinfectName = disinfectName;
    }

    public String getDisinfectAddress() {
        return disinfectAddress;
    }

    public void setDisinfectAddress(String disinfectAddress) {
        this.disinfectAddress = disinfectAddress;
    }

    public String getNucleicAcidName() {
        return nucleicAcidName;
    }

    public void setNucleicAcidName(String nucleicAcidName) {
        this.nucleicAcidName = nucleicAcidName;
    }

    public String getNucleicAcidAddress() {
        return nucleicAcidAddress;
    }

    public void setNucleicAcidAddress(String nucleicAcidAddress) {
        this.nucleicAcidAddress = nucleicAcidAddress;
    }


    public Long getSelectId() {
        return selectId;
    }

    public void setSelectId(Long selectId) {
        this.selectId = selectId;
    }
}
